home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 76 / XENIATGM66.iso / Indiana Jones / Indiana Jones.exe / RESOURCE / PREVIEW.GOB / cog_gen_door.cog < prev    next >
Text File  |  1999-11-15  |  2KB  |  85 lines

  1. # Jones 3D Cog Script
  2. #
  3. # gen_Door.cog
  4. #
  5. # Generic Door Script
  6. #
  7. # [IS]
  8. #
  9. # (C) 1997 LucasArts Entertainment Co. All Rights Reserved
  10. # ========================================================================================
  11.  
  12. symbols
  13.     message    startup        
  14.     message    activate    
  15.     message    arrived        
  16.     message    timer        
  17.     message    blocked        
  18.  
  19.     thing        door0                    linkid=0 mask=0x405
  20.  
  21.     float        moveSpeed=8.0
  22.     float        sleepTime=2.0
  23.  
  24.     float        lightValueR=0.5
  25.     float        lightValueG=0.5
  26.     float        lightValueB=0.5
  27.  
  28.     vector    vecLightValue        local
  29.  
  30.     sector    doorSector            local
  31. end
  32.  
  33. # ========================================================================================
  34.  
  35. code
  36.  
  37. startup:
  38.     doorSector = GetThingSector(door0);
  39.     SetSectorAdjoins(doorSector, 0);
  40.  
  41.     vecLightValue = VectorSet(lightValueR, lightValueG, lightValueB);
  42.     SetSectorLight(doorSector, vecLightValue, 0.0);        // add some light to door sector
  43.     return;
  44.  
  45. # ........................................................................................
  46.  
  47. activate:
  48.     if (IsThingMoving(door0)) return;
  49.     if (GetCurFrame(door0) == 0)
  50.     {
  51.         SetSectorAdjoins(doorSector, 1);
  52.         MoveToFrame(door0, 1, moveSpeed);
  53.     }
  54.     return;
  55.  
  56. # ........................................................................................
  57.  
  58. arrived:
  59.     if (GetCurFrame(door0) == 1)
  60.     {
  61.         SetTimer(sleepTime);
  62.     }
  63.     else
  64.     {
  65.         SetSectorAdjoins(doorSector, 0);
  66.     }
  67.     return;
  68.  
  69. # ........................................................................................
  70.  
  71. blocked:
  72.     MoveToFrame(door0, 1, moveSpeed);
  73.     return;
  74.  
  75. # ........................................................................................
  76.  
  77. timer:
  78.     MoveToFrame(door0, 1, moveSpeed);
  79.     return;
  80.  
  81. # ........................................................................................
  82.  
  83. end
  84.  
  85.